package com.dsj.gxrd.modules.people.domain.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ruoyi.system.api.domain.SysDept;
import com.ruoyi.system.api.domain.SysRole;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;

/**
 * @author songpin566
 * @date 2023/09/21
 **/
@Data
@ApiModel("用户详情vo")
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class RdUserInfoVo {

    @ApiModelProperty("赣县人大用户详情id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;
    @ApiModelProperty("对应的用户id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long userId;
    @ApiModelProperty("党派")
    private String partyGroup;
    @ApiModelProperty("所属机构id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long deptId;
    @ApiModelProperty("所属机构名称")
    private String deptName;
    @ApiModelProperty("现任职务")
    private String nowDuty;
    @ApiModelProperty("代表证号")
    private String representNumber;
    @ApiModelProperty("驾驶舱查看(0可查看 1不可)")
    private Integer cockpitView;
    @ApiModelProperty("姓名")
    private String name;
    @ApiModelProperty("性别(0男 1女)")
    private Integer sex;
    @ApiModelProperty("名族")
    private String nation;
    @ApiModelProperty("头像")
    private String headImage;
    @ApiModelProperty("籍贯")
    private String nativePlace;
    @ApiModelProperty("文化")
    private Integer culture;
    @ApiModelProperty("文化")
    private String cultureName;
    @ApiModelProperty("入党时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime joinPartyTime;
    @ApiModelProperty("乡镇")
    private Integer township;
    @ApiModelProperty("所属级别(多个用逗号隔开)")
    private String level;
    @ApiModelProperty("所属级别(多个用逗号隔开)")
    private String levelName;
    @ApiModelProperty("届")
    private String session;
    @ApiModelProperty("联系方式")
    private String phonenumber;
    @ApiModelProperty("邮箱")
    private String email;
    @ApiModelProperty("排序")
    private Integer sort;
    @ApiModelProperty("工作职责")
    private String workDuty;
    @ApiModelProperty("承诺")
    private String promise;
    @ApiModelProperty("创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;
    @ApiModelProperty("创建者")
    private String createBy;
    @ApiModelProperty("修改时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;
    @ApiModelProperty("修改人")
    private String updateBy;
    @ApiModelProperty("删除标记")
    private Integer delFlag;
    @ApiModelProperty("禁用状态")
    private Integer status;
    @ApiModelProperty("部门")
    private SysDept dept;
    private String area;
    /** 角色对象 */
    private List<SysRole> roles;

    /** 角色组 */
    private Long[] roleIds;

    /** 角色ID */
    @JsonSerialize(using = ToStringSerializer.class)
    private Long roleId;

    private Integer nums;

}
































